昨天講到可以在XML寫入固定的domain, 就是固定的搜尋條件
但是肯定有需求是使用者在A欄位選擇了什麼資料後, B欄位的搜尋條件就必須因應A欄位而變更
那麼原本的XML的固定domain寫法就會不合使用, 但我們可以活用onchange方法
範例程式如下:
@api.onchange('A欄位')
def test(self):
...
domain = {"B欄位": [('id', '=', self.A欄位.id)]}
return {"domain": domain}
由於domain是字典, 所以這裡可以使用程式語法去判斷domain應該塞什麼判斷式, 所以可以根據實際需求去變動